package collection;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;

public class CollectionSortDemo03 {
    public static void main(String[] args) {
        Point p1=new Point(10,20);
        Point p2=new Point(5,30);
        List<Point> list=new ArrayList<>();
        list.add(p1);
        list.add(p2);
        //调用Collections.sort(List<T> list,Comparator cc)方法对Point对象排序
        //方法中的Comparator对象为比较器对象，适用于更加灵活的排序场景
        Comparator<Point> comparator1=new Comparator<Point>() {
            @Override
            public int compare(Point o1, Point o2) {
                return o1.getX()-o2.getX();
            }
        };
        Comparator<Point> comparator2=new Comparator<Point>() {
            @Override
            public int compare(Point o1, Point o2) {
                return o1.getY()-o2.getY();
            }
        };
        Collections.sort(list,comparator1);
        System.out.println(list);
        Collections.sort(list,comparator2);
        System.out.println(list);
    };
}
//Collections,Comparable,Comparator
//AI提示词
/**
 * 您作为Java技术专家，我希望您帮我解释一下Comparable,Comparator对象的应用，可以从它是什么，
 * 应用在哪里？为什么应用它，如何应用它等这几个维度进行说明.同时也要告知它存在问题。
 */



